Software Plan

 

 

Requested by:       Dr. Darren Lim

Assistant Professor

Department of Computer Science

Siena College

 

 

Mrs. Pauline White

Visiting Instructor

Department of Computer Science

Siena College

 

 

 

Generation Java

 

ID-10t Consultants

 

 

 

Prepared by:         Kevin Mulcahy

Christine Fox

                                             Nick Miller

Jordan Steans

 

 

 

 

 

 

September 19, 2008

Generation Java

Software Plan

Table of Contents

 

SYSTEM DEFINITION

1.1        Problem Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2        System Justification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3        Goals for the System and Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.4        Constraints on the System and on the Project . . . . . . . . . . . . . . . . . . . . . . . ..3

1.5        Functions to be Provided . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .4

1.6        User Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.7        Development/Operating/Maintenance Environments . . . . . . . . . . . . . . . . . .4

1.8        Solution Strategy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

1.9      System Acceptance Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

1.10      Sources of Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

 

PROJECT PLAN

2.1        Project Management & Development Model (Waterfall Model). . . . . . . . . 6

2.2        Team Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.3        Preliminary Staffing and Resource Requirements . . . . . . . . . . . . . . . . . . . . 7

2.4        Preliminary Development Schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.5        Project Monitoring and Control Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.6        Tools and Techniques to Be Used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.7        Programming Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.8        Testing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 9

2.9        Supporting Documents Required . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.10      Manner of Demonstration and Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 9

2.11      Sources of Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

 

APPENDICES

Appendix A:  Team Resumes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Appendix B:  Glossary of Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

 

 

 

System Definition

 

 

1.1

Problem Definition

 

        

 

Dr. Lim and Mrs. White have informed us that they are looking for a program that will give them the ability to create and distribute java quizzes to their students. Similar to JavaBat, the program should have the ability to compile and run the submitted java code and output grading feedback based the code's correctness. Students will be restricted to quizzes that they have permission to access, and all results will be sent directly to the instructor in a confidential manner. The program will be used via the internet, so it must be compatible with all major browsers (including, but not limited to: Internet Explorer, Mozilla Firefox, and Safari). 

 

 

1.2

System Justification

 

 

 

The purpose of our quiz program will be to provide features similar to those of JavaBat, with Dr. Lim and Mrs. White (and possibly other professors) having the ability to select the problems that students will be assigned. This will promote an increase in the students' skills in java programming, while, at the same time, allow for quicker and more efficient grading of the assigned problems.

 

 

1.3

Goals for the System and Project

 

 

 

The goal of the Generation Java project is to build a secure, flexible, easy to             maintain web-based environment for creating and evaluating Java quizzes. By          adhering to this goal, we hope to help the clients improve their students skill set       in java programming.

 

  

1.4

Constraints on the System and on the Project

 

 

 

The most important constraint on the project is there must be three specific user account types, an administrator, a teacher and a student. Depending on the users account type, they will be able to access more or less options while running the application. Along with the application, it is web based and must be compatible with all major web browsers. Regarding the system, all code must compile with the Java 1.6 compiler. Also, the system needs to maintain whether each student has viewed, tried and/or completed a question. Finally, it is essential data can be stored on a database.

 

 

 

 

1.5

Functions to be Provided

 

 

 

·      An online database to store the profiles of the administrator, teachers, students and to store a bank of questions.

·      Online forms for the administrator, teachers, and students to use for registering accounts and updating profile information.

·      A secure login system for all account types in order to manage personal information safely.

·      Compatibility with all major web browsers, such as Mozilla Firefox, Internet Explorer, Netscape Navigator, and Safari.

·      Teachers’ ability to add questions, specify a time at which a question becomes available to students, and view results.

·      Administrator ability to change permissions, view, edit, and delete any question and have access to any student or teacher account.

·      Students' ability to select a set of questions and to type code which can be compiled to answer a question.

 

 

1.6

User Characteristics

 

 

 

Three kinds of users can be identified: the administrator(s), the course instructor(s), and the course student(s).

·      The administrator maintains and configures the system and user permissions.

·      The course instructor defines and builds Java quizzes, configures question distribution, and invokes the grading module to monitor and record user progress.

·      The course student defines answers to quiz questions and maintains their personal information.

 

 

1.7

Development/Operating/Maintenance Environments

 

 

 

The system will be developed on the Siena College Software Engineering workstations. These workstations are a Dell Dimension 4550 with Windows XP and an Apple iMac with OS X. The operation of this system will be accessible from any computer system with Internet access, though only approved users will be issued login identification and passwords by an administrator and/or teacher. The maintenance of this system will be determined at a future date. (An updated version of this section will be supplied when the software engineering facility is available.)

 

 

 

1.8

Solution Strategy

 

 

 

The project team will use the Linear Sequential Model (also known as the Classic Waterfall Model) to develop the product requested by our client.  The Linear Sequential Model involves the following major activities:

·      Project Definition – The project team will meet with the clients and decide what the problem is that needs to be solved.

·      Analysis and Requirements – The project team will meet with our clients and document the requirements of the new system.

·      Design of the Solution – The project team will translate the system requirements into software requirements.

·      Code and Test the Solution – The project team will translate the software requirements into a programming language. As time passes, the program will continuously be checked to meet the requirements of the clients. This will take place in the Spring 2009 semester.

·      Install and Maintain - This step involves the actual installation of the software product. Documentation that will assist the client in using and maintaining the system will be provided in the Spring 2009 semester.

 

 

 1.9

System Acceptance Criteria

 

 

 

The web-based system will allow for a number of online activities including, but not limited to the following:

  1. Users to register an account with the system.
  2. Users to update their personal information.

3.     Users to access only questions they are granted permission to take.

  1. Secure login to questions and profile information.
  2. Teachers to create, edit, and deliver their own questions.
  3. Teachers to view quiz and homework results.

 

 

1.10

Sources of Information

 

 

 

The major source of information for this project resulted from meetings with our clients Dr. Darren Lim and Mrs. White. Other sources of information include Software Engineering lecture by Dr. Tim Lederman and previous Software Engineering Teams' projects.

 

 

 

 

 

 

Project Plan

 

 

2.1

Project Management & Development Model

 

(Waterfall Model)

 

 

 

Software Plan

 

Defines the problem and establishes goals and requirements to help explain how the problem will be solved.

 

 

 

Requirements Specification

 

Involves all life-cycle activities devoted to identification of user requirements, analysis of the requirements to derive additional requirements, documentation of the requirements as a specification, and validation of the documented requirements against user needs, as well as processes that support these activities (DoD).

 

 

 

Preliminary Design

 

The process of defining the software architecture, components, modules, interfaces and data for a software system to satisfy specified requirements (IEEE).

 

 

 

Detailed Design

 

The process of refining and expanding the preliminary design of a system or component to the extent that the design is sufficiently complete to be implemented (IEEE). This is a complete design, which includes finalized database designs, user designs, and complete steps or storyboards.

 

Acceptance Test

 

Formal testing conducted to determine whether or not a system satisfies its acceptance criteria and to enable the customer to determine whether or not to accept the system (IEEE). This is where the software is demonstrated and shows that the software meets all functional and non-functional requirements.

 

 

2.2

Team Structure

 

 

 

ID-10t Consultants is comprised and organized as follows for the Generation Java

project which can soon be accessed through the Siena College Department of

Computer Science website:

 

Title

Name 

E-mail   

Phone Number

Team Leader

Mulcahy, Kevin  

kt10mulc@siena.edu

(862) 266-4130

Project Manager

Fox, Christine

cm21fox@siena.edu

(518) 265-6284

System Administrator

Miller, Nick

na13mill@siena.edu

(518) 429-0441

Webmaster

Steans, Jordan

jb25stea@siena.edu

(518) 791-6382

   

 

 

 

The team structure is a democracy with the Team Leader making the final decision on any conflict that could not be decided upon by majority vote.

 

 

 

The roles for each member are defined as follows:

Team Leader organizes team meetings and decides the workload for each member of the team.  

 

Webmaster creates and maintains the project web page. 

 

Project Manager is responsible for compilation and organization of documentation related to project work. 

 

Systems Administrator is responsible for installing software and making sure the development workstations are working correctly. 

 

 

2.3

Preliminary Staffing and Resource requirements

 

 

 

The ID-10t Consultants’ team that is responsible for the long-term planning, development and operation of the java grading computing service will undertake the work of the Generation Java Project at Siena College. The personnel is being funded by their enrollment in the Siena College Software Engineering course and will work with the tools provided in the Siena College Software Engineering lab (Tools to be defined after completion of the lab). The planning numbers will of course be revised as more detailed requirements emerge from the clients, Dr. Darren Lim, Assistant Professor of the Siena College Computer Science Department, and Mrs. Pauline White, Visiting Instructor of the Siena College Computer Science Department, and as detailed planning of the project proceeds.

 

 

2.4

Preliminary Development Schedule

 

 

 

This section will become available once our team is able to gain access to the software engineering room.

 

 

2.5

Project Monitoring and Control Mechanism

 

       

 

Weekly project meetings at Siena College and via conference calls (if required) will be utilized to drive the project from start to finish. The Project Schedule will be the document used to monitor the progress of the project and all parties will be held to their level of responsibility regarding the schedule. Topics discussed weekly will include: responsibilities of parties involved in the project, project requirements, progress of development, punch lists as required, and any questions or concerns regarding the project.

 

 

2.6

Tools and Techniques to Be Used

 

 

 

Since the Siena College Software Engineering lab is still currently under construction, the team is not able to define the exact tools to be used, but will offer a general overview of the various programs to be utilized but not limited to. To design, develop, and plan the project and website, the team will utilize Adobe CS3: Dreamweaver, Photoshop, Fireworks, Flash, Microsoft Office, and Microsoft Project. The team will also use PHP, HTML, XHTML, CSS and any other languages necessary to complete the project, while complying with project requirement specifications and constraints to be further defined as the project proceeds in order to complete the project software development. Techniques to be used will include techniques learned in the Siena College Software Engineering course and the skills and knowledge presented by the collaboration of team members, clients, and any other parties of the project.

 

 

2.7

Programming Languages

 

  

 

ID-10t will be taking advantage of multiple languages for both our survey project and our team website.  These languages include HTML, XHTML, JavaScript, PHP, CSS and either MySQL or Oracle. This will be determined by the team at a later date.

 

 

 

 

 

 

2.8 

Testing Requirements

 

 

 

Throughout the creation of our project, there will be extensive testing of all of our material.  Members of our team will do the testing for this project.  The client will receive the results of the tests and will be asked to be involved in the testing process.

 

 

2.9

Supporting Documents Required

 

 

 

The supporting documents will be provided to our client by the following dates:

  1. Project Plan - September 18, 2008
  2. Software Requirements Specifications - October 23, 2008
  3. Preliminary Design – December 2, 2008

2.10

Manner of Demonstration and Delivery

 

 

 

The presentations will take place on the following dates. The purpose of the presentations is to inform our client of the progress that we have made through the semester. These presentations also aim to validate our team’s understanding of the clients’ specified requirements for the project:

1.     Project Plan - September 18, 2008

  1. Presentation of Project Plan – September 19, 2008
  2. Software Requirements Specifications - October 23, 2008
  3. Specifications Presentation – October 24, 2008
  4. Preliminary Design - December 2, 2008
  5. Preliminary Design Presentation – December 2, 2008

 

 

2.11

Sources of Information

 

 

 

The major source of information for this project resulted from meetings with our clients Dr. Darren Lim and Mrs. White. Other sources of information include Software Engineering lecture by Dr. Tim Lederman and previous Software Engineering Teams' projects.

 

  


ID-10t Consultants

 

 

 

 

 

Appendices

 

 

 

 

 

 

Appendix A:  Team Resumes

Kevin Mulcahy

Christine Fox

Nick Miller

Jordan Steans

 

 

 

 

 

 

 

 

 

 


Kevin T. Mulcahy

kevint.mulcahy@gmail.com

 

Present Address: Permanent Address:

Siena College, SPOB 3160 201 Squam Road

515 Loundon Road Highland Lakes, NJ 07422

Loudonville, NY 12211 (973)-764-5561

Cell: (862)-266-4130

 

Objective

 

            To obtain a challenging position in a field that utilizes my knowledge and allows for further development and learning.

 

Education

 

Anticipated – Siena College, Loundonville, NY

B.S. in Computer Science, Minor in Business, May 2009

            GPA: 3.72/4.0 in Major 3.63/4.0 overall

 

Computer Skills

 

Microsoft Windows 98, ME, XP, Vista; Microsoft Office: Word, Excel, PowerPoint; Microsoft Visual Basic 6.0; Microsoft IE 6, 7; Mozilla/Firefox; Java BlueJ IDE, Eclipse IDE; Adobe Dreamweaver; Adobe Firework CS3; HTML; JavaScript; CSS; PHP; MySQL

 

Work Experience

 

Field Office Manager – Gardner M. Bishop, Inc.

            Scanning and Storing Shipping Tickets on Company Server

            Compiling Weekly Payroll

            Scheduling On-Site Deliveries

            Tracking Pay Quantities

 

Certified Lifeguard – Highland Lakes Country Club

            Certifications: Waterfront Lifeguarding and First Aid

            CPR/AED for the Professional Rescuer

                                    Water Safety Instructor

 

Computer Science Tutor – Moderating Group Tutoring Sessions in CS Lab

 

Honors/Awards

 

Member of Upsilon Pi Epsilon (UPE) – International Computer Science Honor Society

Dean’s List 2005-2008

Presidential Scholarship recipient 2005-present

         Christine Fox

cm21fox@siena.edu

171 WoodDale Drive · Ballston Lake NY 12019 · (518)-877-5423

Objective

      To obtain an job in the computer science field.

Education

            Siena College, Loudonville, NY

            B.S. Computer Science, Business Minor, May 2009

Computer Skills

Programming in Visual Basic, Java, HTML, PHP, C++ and Assembly

Database Background in Oracle/SQL

Related Experience

Student Worker for Blackboard Administrator, Siena College, June 2008 –Present

·      HTML programming for educational technology help page in role of Web          Developer

·      Evaluate higher education technologies in role of Educational Technician

·      Provide support throughout training sessions including initial computer set-up and questioning during session

·      Selected to represent Academic Affairs at summer orientation programs, interacted with parents and new students informally and at formal informational poster sessions.

Student Assistant to the Systems Administrator, Siena College, May 2007 –Present

·      Set-up and installation of new computers

·      Perform daily maintenance on Science Department computers

Student Worker, Science College Computer Science Department, September 2006- Present

·      Assist faculty with projects and labs

Tutor, Siena College Computer Science Department, March 2007 – Present

·      Assist students with labs and homework assignments primarily in Visual Basic and Java

Additional Experience

Student Worker, Siena College School of Science Office, May 2007 – Present

·      Assist laboratory technicians with preparation of labs

Page, Clifton Park – Halfmoon Public Library, June 2004 – August 2005

·      Handled distribution of books and other materials

Relevant Course Work

            Introduction to Computer Science, Introduction to Java, Data Structures, Assembly Language and Computer Architecture, Object-Oriented Design and Programming, Operating Systems, Database Management, Web Design, Software Engineering, and Parallel Processing

Activities

·      On-line, Registration & Accounting Chair, Relay for Life, 2006 – Present

·      Mentor, Leukemia and Lymphoma Society Team in Training Program, 2004 – 2007

·      Treasurer, Padua Hall Council, 2007 – 2008

·      President/Founder, Siena College Association for Computing Machinery - Women Chapter, 2007 – Present

 

 

 

 

 

Nicholas A. Miller

3 Lapham Drive

Albany, New York 12205

518-429-0441

na13mill@siena.edu

 

Objective:

To obtain a position in the Computer Science field, utilizing my programming abilities.

 

Education:

            Siena College, Loudonville, N.Y.

            B.S. in Computer Science, cum laude, January 2009

            Minor in Mathematics and Business

GPA: 3.5/4.0

            Dean’s List 2007-2008; Presidential Scholar 2006 – Present

 

Course Experience:

            Computer Science

·      Intro to Computer Science, Visual Basic

·      Data Structures

·      Object Oriented Programming

·      Analysis of Algorithms

·      Computer Architecture/Assembly Language, C++

Mathematics

·      Calculus I, II, & II

·      Discrete Structures I & II

·      Number Theory

 

Experience:

            Student Assistant, SUNY System Administration, Albany, N.Y., May 2007 - 2008

·      Used OmniUpdate, Fireworks and Dreamweaver to manage and update web pages

·      Helped develop an application used to manage Board of Trustees Meetings

·      Learned HTML, XML, JavaScript and Coldfusion

·      Ran server-wide searches for personal information violations

·      Became more familiar with Microsoft Excel, Word and PowerPoint

 

Additional Experience:

            In-home Serviceman, Lake Electronics, Albany, N.Y., 2008 - Present

·      Picked up, delivered, and installed all electronics

 

Computer & Language Skills:

Computers: Microsoft Word, PowerPoint, Excel, Visual Basic, C, Java, Unix, HTML, XML, ColdFusion, Fireworks

Languages: Spanish

 

Jordan B Steans

510 Broadway, Apt 25 / Saratoga Springs, NY 12866

jb25stea@siena.edu

Education

Siena College, Loudonville, NY

B.S. in Computer Science, May 2009

Minor: Business

Major GPA: 3.14

 

Experience

LXR Luxury Resorts & Hotels – Saratoga Springs, NY

Accountant                                                                                                         March 2008–Present

·  Support the Director of Finance in directing budget and cost controls, financial analysis, and accounting procedures at The Saratoga Hilton

·  Analyze, verify and post transactions to journals, ledgers and other records

·  Update, investigate and correct accounting entries and ledgers as needed

·  Participate in the reconciliation of complex transactions and general ledger accounts

 

Xanterra Parks & Resorts, Inc – Saratoga Springs, NY

Accounting Clerk                                                                                         May 2007-January 2008

·  Managed overall accounts payables processing for the Gideon Putnam Resort & Spa, and Roosevelt Baths & Spa

·  Administered over accounts receivables for the Gideon Putnam Resort & Spa, including tax exempt verification

·  Maintained accounts payables and miscellaneous balance sheets/ledgers

·  Verified on a daily basis the balance of in-house safe and bank deposits

 

WOW Restaurants, Inc – Saratoga Springs, NY

Corporate Manager                                                                                     May 2005-January 2007

·  Administered/ analyzed entry process of daily sales, including accounts payables and receivables for Wheatfields Restaurant & Bar, JT’s Shrimp Shack and a consulting firm, Restaurant Consulting Partners, LLC

·  Reorganized and developed new training procedures to be implemented for use internally and externally

·  Administered overall human resources/ payroll process: tax fillings, insurances, and benefits

 

Xanterra Parks & Resorts, Inc – Saratoga Springs, NY

Accounting Clerk                                                                                                             Summer 2005

·  Compiled invoices, statements, and overall group billing process for the Gideon Putnam Resort & Spa

·  Trimmed accounts receivables by 75% during my tenure

 

Additional Experience

Intern, Saratoga Rheumatology, Gansevoort, NY, April 2005-May 2005

Accounts Payable Assistant, Fort William Henry Corporation, Lake George, NY, Summer 2004

Reservations Manager, Fort William Henry Corporation, Lake George, NY, Summer 2003

Asst. Manager/ Payroll Admin., Jewel’s Donuts, Inc, Glens Falls, NY June 2001-August 2002

 

Computer Skills

Accounting: Epicor, Aspen 360, Lawson, PeopleSoft, QuickBooks, Microsoft Great Plains

Microsoft Office: Word, Excel, Outlook, Power Point, Access

POS/PMS Systems: Hilton OnQ, Aloha, Restaurant Manager, Digital Dining, Micros, Innfinity Hospitality Systems

Other: HTML/XHTML, PHP, Java, MySQL, Oracle, Microsoft Visual Basics

 

Honors/Awards

Franciscan Scholar, Siena College

Appendix B:  Glossary of Terms

 

CSS – Cascading Style Sheets – These are used to describe a specific style for a web page or set of pages, a website.

  

Database - A collection of data arranged for ease and speed of search and retrieval.

 

Internet - A vast computer network linking smaller computer networks worldwide. The Internet includes commercial, educational, governmental, and other networks, all of which use the same set of communications protocols.

 

IE – Internet Explorer – Microsoft based program used for browsing the Internet.

 

MySQL – A Multithreaded, multi-user Relational Database Management System.

 

PHP – Hypertext Preprocessor – An open source (free) programming language that is used for dynamic pages and is a high-level scripting language.

 

Profiles – User created accounts that will be customizable according to each specific person.

 

XHTML – Extensible HyperText Markup Language – has same capabilities of HTML but is more restricted to allow for conformity among multiple platforms.